#ifndef _LEVEL_DEFINE_H_
#define _LEVEL_DEFINE_H_

#define LEVEL_MAX_TEMPLATE 4
#define LEVEL_MAX_LEVEL 2
#define LEVEL_MAX_ELEMENT 11
#define LEVEL_MAX_VALUE_PARAM 10

class LEVEL_TEMPLATE
{
public:
	static const int SPRITEBASED = 0;
	static const int SELECTPOINT = 1;
	static const int STRINGBASED = 2;
	static const int STRINGRECT = 3;
};

class LEVEL_LEVEL
{
public:
	static const int NEW_GUI = 0;
	static const int MAIN_MENU = 1;
};

class LEVEL_NEW_GUI
{
public:
	static const int SelectPoint_0 = 0;
	static const int SpriteBased_1 = 1;
};

class LEVEL_MAIN_MENU
{
public:
	static const int SpriteBased_0 = 0;
	static const int SpriteBased_1 = 1;
	static const int SpriteBased_2 = 2;
	static const int SpriteBased_3 = 3;
	static const int SpriteBased_4 = 4;
	static const int StringBased_5 = 5;
	static const int StringBased_6 = 6;
	static const int StringBased_7 = 7;
	static const int StringRect_8 = 8;
	static const int StringRect_9 = 9;
	static const int StringRect_10 = 10;
};

static int s_levelIngame[LEVEL_MAX_LEVEL][LEVEL_MAX_ELEMENT][LEVEL_MAX_VALUE_PARAM] = 
{
	{
		{ 1, 132, 80, -1, -1, -1, -1, -1, -1, -1 },
		{ 0, 184, 141, 1, 0, 1, 0, -1, -1, -1 },
	},
	{
		{ 0, 102, 101, 0, -1, 1, 0, -1, -1, -1 },
		{ 0, 129, 335, 1, 0, 1, 0, -1, -1, -1 },
		{ 0, 349, 339, 1, 0, 1, 0, -1, -1, -1 },
		{ 0, 397, 221, 1, -1, 1, 0, -1, -1, -1 },
		{ 0, 626, 333, 1, 0, 1, 0, -1, -1, -1 },
		{ 2, 363, 40, 0, 0, 1, 0, -1, -1, -1 },
		{ 2, 365, 77, 0, 0, 1, 1, -1, -1, -1 },
		{ 2, 366, 117, 0, 0, 1, 2, -1, -1, -1 },
		{ 3, 25, 278, 0, 0, 1, 0, 1, 86, 102 },
		{ 3, 370, 280, 0, 0, 1, 2, 1, 84, 109 },
		{ 3, 526, 277, 0, 0, 1, 1, 1, 204, 109 },
	},
};

static int s_levelElementMax[LEVEL_MAX_LEVEL]= { 2, 11, };
#endif